Method and system for limiting controlled characteristics of a remotely controlled device

ABSTRACT

Remotely controlled devices ( 110 ) are controlled by one or more wireless remote controllers ( 114 ). The remotely controlled devices ( 110 ) and wireless remote controllers ( 114 ) communicate to each other over a two-way wireless link. The system and method provide pre-defined profiles that limit the performance of the remotely controlled devices ( 110 ) in order to provide different operating characteristics with the same remotely controlled devices ( 110 ). The system and method further provide one or more forms of feedback to a user of the wireless remote controller ( 114 ), such as sounds, vibration, and the like. The feedback can be provided in response to detected events associated with the remotely control device ( 110 ), such as sharp turns and the like. The performance limits of the remotely controlled devices ( 110 ) is also able to be modified with operating time in order to simulate, for example, improved driver skills, fuel depletion and/or pit stops.

FIELD OF THE INVENTION

The present invention relates generally to the field of controlling remote controlled devices, and more particularly relates to limiting the controlled characteristics of remotely controlling devices and providing feedback to the user of a remote controller.

BACKGROUND OF THE INVENTION

Remotely controlled devices such as model race cars, airplanes and watercraft, are controlled by remote controlling transmitters that have a one-way radio link to the device being controlled. Such one-way control transmitters are limited in their ability to provide the user with stimuli to augment the visual perception of the remotely controlled device. Additional stimuli are generally only imagined by the user. Physical feedback, operational boundaries, and device performance are generally controlled only by the user and not by pre-set, external influences such as is the case in the real world. The simulation of real world experiences when controlling these devices is therefore limited.

Therefore a need exists to overcome the problems with the prior art as discussed above.

SUMMARY OF THE INVENTION

Briefly, in accordance with the present invention, disclosed is a method for wirelessly controlling a self propelled apparatus that includes storing a profile that contains at least a definition of at least one apparatus characteristic limit. The method further includes controlling a self propelled apparatus from a remote controller that is in bi-directional wireless communications with the self propelled apparatus. The controlling includes at least one of limiting a controlled value of the self propelled apparatus based upon the at least one apparatus characteristic limit, and providing feedback through the remote controller based upon at least one detected event.

Also disclosed is a self propelled apparatus that includes a processor that controls at least one operation of the self propelled apparatus, at least one event detector to detect at least one detected event associated with the self propelled apparatus, and a bi-directional wireless communications interface that receives commands for control of the self propelled apparatus and transmits an indication of the at least one detected event.

Further disclosed is a remote controller that includes a user input sensor that determines a user input and a self propelled apparatus control module that generates, based upon the user input, control instructions to be transmitted to a self propelled apparatus. The remote controller further includes a bi-directional short range wireless interface that transmits the control instructions and receives an indication of at least one detected event, and a user feedback generator that generates, based upon the at least one detected event, at least one type of user feedback.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, where like reference numerals refer to identical or functionally similar elements throughout the separate views and which together with the detailed description below are incorporated in and form part of the specification, serve to further illustrate various embodiments and to explain various principles and advantages all in accordance with the present invention.

FIG. 1 illustrates a model race car track with remotely controlled vehicles and wireless controllers in accordance with one embodiment of the present invention.

FIG. 2 illustrates a processing circuit block diagram of a remotely controlled vehicle in accordance with one embodiment of the present invention.

FIG. 3 illustrates a processing circuit block diagram of a remote controller with cellular phone communications in accordance with one embodiment of the present invention.

FIG. 4 illustrates a processing flow diagram for controlling a remotely controlled vehicle in accordance with one embodiment of the present invention.

FIG. 5 illustrates a front view of a remote controller with cellular phone communications in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION

While the specification concludes with claims defining the features of the invention that are regarded as novel, it is believed that the invention will be better understood from a consideration of the following description in conjunction with the drawing figures, in which like reference numerals are carried forward.

FIG. 1 illustrates a model race car track 100 with remotely controlled vehicles and wireless controllers in accordance with one embodiment of the present invention. This model race car track 100 can be set up in an outdoor field, in a large building, or in an indoor setting such as a living room. As described below, the operation of the exemplary embodiment adjusts for the shorter distances of common indoor settings by restricting the performance ability of the remotely controlled vehicles.

The model race car track 100 of the exemplary embodiment includes one or more remotely controlled model race cars 110. The remotely controlled model race cars 110 are self propelled apparatuses that are able to be of any size, from miniature models that are suitable for use in confined areas such as indoor use, to larger models that are suitable for outdoor use in parking lots, open fields, and the like. Self propelled apparatuses of further embodiments include, for example, model watercraft, model train, model aircraft, and the like. Each of the remotely controlled model race cars 110 is controlled by a corresponding wireless remote controller 114 held by or located near an associated user of the device. In the exemplary embodiment, the wireless remote controller 114 provides feedback to the user in the form of, for example, sounds, vibration, shock pulses, and any other type of feedback that is able to be provided by the particular control device. The remotely controlled model race cars 110 further have one or more associated profiles that specify limits on the capabilities of the remotely controlled model race car 110 and also include specifications of feedback stimuli to provide to the user of the wireless remote controller 114 in response to detected events. The profile is also able to include specifications of feedback that is to be provided to the user in response to, for example, particular detected events. The remotely controlled model race car 110 of the exemplary embodiment transmits indications of these detected events, which specify the event that was detected, or specifications of feedback stimuli to the wireless remote controller 114. A specification of feedback stimuli is able to include one or more file names, one or more multimedia resource identifiers, one or more entire multimedia resources such as a sound file, image, video file, vibration profile, or combinations of these.

In the exemplary embodiment of the present invention, the operator of the wireless remote controller 114 is also able to associate the wireless remote controller 114 with a particular remotely controlled model race car 110 by selecting a particular remotely controlled model race car 110 from a plurality of remotely controlled model race cars 110 within range of the wireless remote controller 114 to control at a particular time. This association uses a function of the wireless communications interface to determine which remotely controlled model race cars 110 are in range and allows a user to select a particular remotely controlled model race car 110 from a list or through other means.

The remotely controlled model race cars 110 of the exemplary embodiment are able to have one or more pre-defined characters. These pre-defined characters define at least one apparatus characteristic limit which defines, for example, one or more performance limitations of a controlled value of that particular remotely controlled model race car 110. A controlled value in this context refers to any parameter associated with the remotely controlled model race car 110 that is controlled by a control mechanism and whose value can be limited. Examples of controlled values include vehicle speed, acceleration, turning radius, sound generation volume, and any other controllable quantity.

The pre-defined characters of the exemplary embodiment can be defined, for example, by the type and/or model of the car or the skill of a particular driver that is fictionally chosen to drive the car. The driver's skill can be set, for example, by having driver personalities that correspond to real life drivers and setting the performance ability of the car according to the real life drivers NASCAR ranking. These pre-defined characters that are initially assigned to the remotely controlled race car 110 are able to be adjusted over time, e.g., performance can be improved, to simulate, for example, a driver's gaining more experience. Allowing the performance of a vehicle to improve with driver experience has the advantage of encouraging more use of the remotely controlled model race car 110 by an individual user and therefore greater user satisfaction, sense of achievement, and interest in using and buying similar products.

The remotely controlled model race car 110 of some exemplary embodiments implement their at least one character by receiving and storing at least one pre-defined profile. Further embodiments store pre-defined profiles in either the wireless remote controller 114 or divide the data and related processing to implement the profiles between the remotely controlled model race car 110 and the wireless remote controller 114. Pre-defined profiles defined for the remotely controlled model race car 110 correspond to the pre-defined character for a particular model of car and/or skill of the driver. In the operation of the exemplary embodiment, the user of a wireless remote controller 114 is presented with a list of “cars and/or drivers” from which the user is able to make a selection. Each of these “cars and/or drivers” selection has a corresponding pre-defined profile that specifies the performance characteristics and/or constraints of the particular remotely controlled race car 110. In the exemplary embodiment of the present invention, the available pre-defined profiles are stored on the wireless remote controller 114 or are received by the wireless remote controller 114 over a wireless data link from a remote location, such as a service provider. Once a pre-defined profile is selected by the user, the selected profile implemented for that remotely controlled race car 110. Embodiments that perform profile implementation processing either wholly or partially in the remotely controlled race car 110 communicate the profile selection or profile data to the wirelessly controlled race car 110 over a wireless link. Some embodiments of the present invention are able to store one or more pre-defined profiles in the wirelessly controlled race car 110 itself and allow a user to select one of these stored pre-defined profiles by exchanging data with the wireless remote controller 114 that defines available profiles and identifying user selections.

In addition to limiting the performance of a remotely controlled model race car 110 based upon the vehicles character set by a pre-defined profile, some embodiments of the present invention will also alter the vehicle's performance based upon whether the vehicle is operating in an indoor or outdoor environment. For example, an indoor environment may be assumed to be a restrictive space and that slower movement of the vehicle will provide a similar user experience as is realized with higher performance in an outdoor environment. As discussed below, the exemplary embodiment of the present invention attempts to detect if the remotely controlled model race car 110 is operating in an indoor environment by either detecting low light conditions with light sensors or a camera that is part of the wireless remote controller 114, or by detecting an absence of GPS signal with a GPS receiver that is also part of the wireless remote controller 114. Embodiments that attempt to determine operation in an indoor or outdoor environment are able to optionally prompt the user to confirm this detection, such as by requesting an input that confirms that the user is in an indoor environment. Further embodiments use light sensors or GPS receivers located in other areas, such as in the remotely controlled model race car 110.

The race car track 100 includes one or more remotely sensed markers 112. A remotely sensed marker 112 is a physical device that is able to be sensed by sensors on the remotely controlled model race car 110, so as to be able to detect when the remotely controlled model race car 110 is in proximity to the remotely sensed marker 112. Remotely sensed markers 112 are placed at pre-determined locations in an area of movement for the remotely controlled model race car 110 and are able to indicate, for example, characteristics of a particular portion of the race environment. Remotely sensed markers 112 are able to indicate, for example, lap conditions, pit stops for fuel, tires, a simulated uphill grade, and the like. The detection of the remotely controlled model race car 110 being in proximity to a remotely sensed marker 112 triggers an event that is able to affect the processing, as is described below. The exemplary embodiment of the present invention adjusts the performance in response to, for example, an event indicating detection of a remotely sensed marker 112 in order to simulate an environmental limit on a vehicles performance, such as a simulated uphill grade.

In the exemplary embodiment, remotely sensed markers 112 are able to include magnetic field generators, such as permanent or electromagnetic magnets, that generate a magnetic field that can be detected by a Hall-effect sensor located within the remotely controlled model race car 110. Further remotely sensed markers 112 include, for example, Radio Frequency Identification tags, i.e., radio activated transponders that return an identification code, or optically sensed bar codes. Further embodiments of the present invention are able to incorporate remotely sensed markers 112 of any type that are able to be sensed by one or more sensors on the remotely controlled model race car 110. The remotely controlled model race car 110 is able to detect being in proximity to the remotely sensed markers and trigger an event upon such detection. In some embodiments, the remotely controlled model race car 110 is able to particularly identify the remotely sensed marker 112, such as by a serial number or similar identifier, to trigger a particularly identifiable event. These triggered events are used, for example, to alter the operation of the remotely controlled model race car 110, to initiate providing feedback to the user through the wireless remote controller 114, or for any other purpose. Remotely sensed markers 112 are also able to be used to facilitate counting of laps by, for example, counting the number of times a particular remotely sensed marker 112 is passed.

In the exemplary embodiment of the present invention, the user of the wireless remote controller 114 is able to choose, create, or modify feedback that is provided in response to event notifications that are provided to the user. The feedback that is provided by the wireless remote controller is able to be any type of feedback to be provided to the user, such as audio clips, images, sounds, lighting, vibration and any other type of stimulus. Example of such feedback includes playing an audio clip of screeching wheels when the remotely controlled model race car 110 sends an indication of a detected event, such as reflecting that an extremely sharp turn, or playing an audio clip of a sputtering engine upon detection of a low level of “fuel” in a fictitious virtual fuel tank. The particular feedback that is provided to the user in the exemplary embodiment is selected from a plurality of stored feedback representations based upon a particular detected event.

Race car track 100 of this exemplary embodiment includes a track layout 102 that consist of a demarcated path for a race circuit 104 and a pit area 120. The track layout 102 is able to consist of any type of track demarcation, including simple lines marked on the ground or moveable surface, three-dimensional features such as walls and banked curves, and the like. The track layout 102 includes a pit area 120 with a pit entrance 108 and pit exit 122. Further embodiments of the present invention operate without a track layout 102 and simply allow the remotely controlled model race cars 110 to move without course defining boundaries.

Some embodiments require the remotely controlled model race cars to perform a pit stop at specific times. In one example, the user of the wireless remote controller 114 is provided with an indication of the need to perform a pit stop and is provided with a “count down” timer that specifies a time in which a pit stop is to be performed. In the exemplary embodiment, pit entrance 108 and pit exit 112 include associated remotely sensed markers 112 that indicate the entry and exit of the remotely controlled model race car 110 to and from the pit area 120. A pit stop is determined to have been performed, and the timer satisfied, when the vehicle enters the pit area 120 by passing the pit entrance 108. Embodiments of the present invention allow increased performance of the remotely controlled model race car 110 based upon how long the car remains in the pit area, as determined by the time between passing the pit entrance 108 and pit exit 122. As an alternative to detecting a pit entrance 108 and pit exit 122, alternative embodiments of the present invention include a remotely sensed marker, such as a magnetic marker that is sensed by an Hall-effect sensor in the vehicle, at a certain location within the pit area 120 and require the remotely controlled model race car 110 to stop in proximity to that remotely sensed marker to effect a pit stop. Yet further embodiments of the present invention simply stop or reduce the performance of the remotely controlled model race car 110 by, for example, shutting the motor down or limiting its speed to a simulated “coasting speed” for a specified period of time. Some embodiments further prevent the user from entering commands to the remotely controlled model race car 110 during a pit stop.

FIG. 2 illustrates a processing circuit block diagram 200 for a remotely controlled vehicle 110 in accordance with one embodiment of the present invention. A programmable vehicle controller 202 in the exemplary embodiment provides the central control of operations for the remotely controlled vehicle and includes a programmable microprocessor as well as other programmable and optionally fixed logic control circuits as are required for proper operation of the remotely controlled vehicle. The vehicle controller 202 of the exemplary embodiment communicates to a wireless remote controller 114 through a wireless communications interface 204. The wireless communications interface 204 of the exemplary embodiment performs a bi-directional wireless communications through bi-directional short range wireless data interfaces that implement the IEEE 802.15.4 standard. Further embodiments of the present invention are able to utilize wireless communications interfaces that implement different wireless data communications as well as a combination of different wireless communications links and/or a combination of wireless and wired communications links. Still further embodiments of the present invention are able to use wired interfaces between the remotely controlled vehicle and a remote controller.

The vehicle controller 202 of the exemplary embodiment further controls a motor 206 that propels the remotely controlled vehicle. The vehicle controller also controls various audio and visual output devices, such as lights 208 and speaker 210. Further audio and visual output devices are also able to be incorporated into the remotely controlled vehicle and controlled by the vehicle controller 202.

The vehicle controller 202 further accepts input from one or more proximity detectors 212. A single proximity detector is illustrated for clarity, but embodiments of the present invention are able to operate with no proximity detectors, a single proximity detector or multiple proximity detectors. The proximity detector 212 of the exemplary embodiment detects remotely sensed markers 112, as described above, and is able to be any suitable detector, such as Hall-effect sensors for magnetic markers, or readers for RFID or optical bar code, according to the type of remotely sensed markers 112 are to be detected.

The controller 202 of the exemplary embodiment stores and retrieves data from volatile memory 220 and non-volatile memory 240. The non-volatile memory 240 of the exemplary embodiment retains its data when the remotely controlled vehicle is powered off. The non-volatile memory 240 is normally used to store information that is to be retained, but the non-volatile memory 204 is also able to be reprogrammed by controller 202 or by external equipment. Data stored in volatile memory 220 is normally used for a short period of time, such as while the remotely controlled vehicle is operating. Embodiments of the present invention are able to store various data elements in any of volatile and non-volatile memory according to their design and the division of data storage described below is in no way a limiting example of these options.

The volatile memory 220 of the exemplary embodiment is used to store a fictitious fuel level 222 and an operating time 224. The fuel level 222 is an example of a status for the vehicle and is maintained by the vehicle controller 202. Fuel level 222 indicates how much fuel is remaining in a “virtual fuel tank.” The use of a virtual fuel tank and a fuel level 222 provides an element of realism in the operation of the remotely controlled vehicle. The value of the fuel level 222 is communicated back to the wireless remote controller 114 for display to the user. In response to determining that the fuel level 222 value is decreased below a pre-determined level, the vehicle's maximum speed can be decreased to simulate a “coasting” or “stopped” mode that simulates running out of fuel and coasting or possibly pushing the vehicle.

The operating time 224 is used to determine the time that the user has been operating this remotely controlled vehicle. As discussed above, some remotely controlled vehicles can be configured to perform adjustments of at least one apparatus characteristic limit to allow greater performance for the vehicle as the operating time of the vehicle with a particular user increases in order to simulate the user's acquiring greater skill with the vehicle.

The non-volatile memory 240 includes profile data 242 that defines one or more profiles for the remotely controlled vehicles. As described above, vehicle profiles define the performance characteristics for the remotely controlled vehicle. Profile data is either programmed and stored in the remotely controlled vehicle or is received by the remotely controlled vehicle through the wireless communications interface 204. The non-volatile memory 240 of the exemplary embodiment similarly stores a plurality of feedback representations in feedback data 244 that can be provided to the user of the wireless remote controller 114. Some embodiments of the present invention do not store the feedback data in the remotely controlled vehicle but rather store it as part of the program stored within the wireless remote controller 114. Non-volatile memory further includes a program memory 246 that stores the operational computer program executed by the vehicle controller 202. Included in the program memory 246 of the exemplary embodiment is a motor control program 248 that controls the motor of the remotely controlled vehicle. Also stored in the program memory 246 is an event determination program 250 that operates in the exemplary embodiment in conjunction with either inputs from event detectors, such as the proximity detector 212 or software that detects changes in software maintained values within controller 202, to determine detected events that are to trigger changes in operating conditions or that are to trigger providing feedback to the user. The program memory further contains an event responses program 252 that determines the response to be provided to triggered events, such as decreasing the speed of the remotely controlled vehicle or providing specific feedback to the user. The program memory further includes a communications program 254 that is used to implement communications over the wireless communications interface 204 of the exemplary embodiment.

FIG. 3 illustrates a processing circuit block diagram 300 for a remote controller with cellular phone communications 114, in accordance with one embodiment of the present invention. Further embodiments of the present invention utilize remote controllers of various designs and configurations. For example, further embodiments of the present invention utilize remote controllers that are in a Personal Digital Assistant (PDA) or even a stand-alone/dedicated remote controller device. A programmable controller 302 provides the central control for the remote controller and includes a programmable microprocessor as well as other programmable and optionally fixed logic control circuits as are required for proper operation of the remote controller. The controller 302 of the exemplary embodiment communicates to a remotely controlled vehicle 110 through a short range wireless communications interface 306. The short range wireless communications interface 306 of the exemplary embodiment implements a wireless data interface according to the IEEE 802.15.4 standard. Further embodiments of the present invention are able to utilize short range wireless communications interfaces that implement different wireless data communications as well as a combination of different wireless communications links and/or a combination of wireless and wired communications links. Still further embodiments of the present invention are able to use wired interfaces between the remotely controlled vehicle and a remote controller.

The controller 302 of the exemplary embodiment is optionally able to include wireless telephone functionality through a cellular communications module 304. The cellular communications module is able to operate independently from the remote controller functions, or the remote controller functions are able to exchange data with other processors over long range data communications functions provided by the cellular communications module 304. Controller 302 also interfaces with a GPS receiver 350, a light sensor 352 and a camera 354. The GPS receiver 350, light sensor 352 and camera 354 also operate with the cellular communications module 304 to provide functions commonly found in modem cellular phones. In addition to operating with the cellular communications module 304, one or more of the GPS receiver 350, light sensor 352, and camera 354 are indoor environment estimators that are used in the exemplary embodiment to estimate whether the remote controller is in an indoors or outdoors environment. Some embodiments of the present invention adjust the performance of a remotely controlled vehicle when the vehicle is operating indoors, as is described above.

The remote controller 300 further has a user interface that includes a display 308, keypad 310, speaker 312 and a vibration generator 314. The speaker 312 and a vibration generator 314 of the exemplary embodiment are feedback generators used to provide feedback to the user based upon events detected by the remotely controlled vehicle which is being controlled. The keypad 310 is used to accept inputs from the user to control the remotely controlled vehicle. Keypad 310 is able to have special keys that support functions for use in remotely controlling a remotely controlled vehicle, such as “accelerate” and “decelerate” keys. Alternative embodiments are able to include a keypad 310 that is a conventional 12 key telephone keypad, optionally with other function keys as is commonly provided with cellular phones, that has the remote control input functions mapped to the keys of that keypad when the device is operating in a remote control mode. Further embodiments of the present invention include other user input devices, such as joysticks, sliders, and the like.

The controller 302 of the exemplary embodiment stores and retrieves data from volatile memory 340 and non-volatile memory 316. The non-volatile memory 316 of the exemplary embodiment retains its data when the remote controller is powered off. The non-volatile memory 316 is normally used to store information that is to be retained for long time periods, but the non-volatile memory 316 is also able to be reprogrammed by controller 302 or by external equipment. Data stored in volatile memory 340 is normally used for a short period of time while the remote controller is operating. Embodiments of the present invention are able to store data in any of volatile and non-volatile memory according to their design and the storage of data described below is not a limiting example of these options.

The volatile memory 340 of the exemplary embodiment is used to store profile data storage 342 and feedback data storage 344. The profile data storage 342 defines the profile of the remotely controlled vehicle that is being controlled and defines performance limits based upon the selected profile and/or character of that vehicle. The feedback data storage 344 stores definitions of audio, visual, vibratory, or other feedback that is to be provided to the user of the remote controller in response to events received from the remotely controlled vehicle. Feedback data storage 344 of this exemplary embodiment includes sound data 346 and vibration profiles storage 348. Data stored in the vibration profiles 348 define the intensity of vibrations to be generated by the vibration generator 314 when specified events are received from the remotely controlled vehicle.

The non-volatile memory includes a program memory 318 that stores the operational computer program executed by the controller 302. Included in the program memory 318 of the exemplary embodiment is a user interface program 320 that controls the user interface elements of the remote controller. Also stored in the program memory 246 is vehicle selection program 322 that operates to allow the user to select a remotely controlled vehicle from among the remotely controlled vehicles that are available. Some embodiments of the present invention present a list of available vehicles on display 308 and allow the user to select one. Other embodiments of the present invention include remote controllers that do not include a display and allow the user to select a vehicle through different operations. For example, a keypad 310 may have a key labeled “next vehicle” that when pressed, results in a particular vehicle that is not already being controlled to be selected. This selection is able to be indicated to the user by having the lights of that vehicle flash to indicate that it is now selected.

The program memory further includes a communications program 324 that is used to implement communications over the short range wireless communications interface 306 of the exemplary embodiment. Further embodiments are able to implement data communications through the cellular communications module 304.

FIG. 4 illustrates a processing flow diagram for remotely controlling a vehicle 400 accordance with one embodiment of the present invention. The processing begins by the user's selecting, at step 402, a vehicle to control. As discussed above, this selection is performed in the exemplary embodiment by presenting a list on the remote controller that the particular individual is using that lists vehicles which are not currently being controlled by another remote controller. The exemplary embodiment of the present invention implements a wireless protocol that supports identification of remotely controlled vehicles that are not currently being controlled.

As was also discussed above, an alternative method used to select a vehicle is to allow the user of the remote controller to press a “select vehicle” button that changes from one available vehicle to the next when the “next vehicle” button is pressed. When “select vehicle” is selected, an additional command, such as flashing of the vehicles lights or blowing the vehicle's horn, can be sent cause the newly selected vehicle to identify itself to the user.

Once a vehicle is selected, the processing continues by configuring, at step 404, the vehicle with a profile. As described above, a profile defines the operating characteristics of the vehicle, such as maximum speed and/or acceleration. Various embodiments of the present invention store information defining the one or more profiles in the remote control device and/or in the vehicle itself. Profiles stored in the remote control device are able to be communicated to the vehicle, and profiles stored in the vehicle can be selected through the remote control device in order to select the operational limitations of the vehicle. Embodiments of the present invention further allow a remote control device to receive profiles from an external source, such as a server, through a suitable data communications link. Once these profiles are received from the external source, they are then communicated to the remotely controlled vehicle to configure the vehicle. Yet further embodiments divide data for the one or more profiles between the remotely controlled model race car 110 and the wireless remote controller 114.

After the vehicle is configured with a profile, the processing then accepts, at step 406, an input from the user that is to be used to control the vehicle. Such user inputs can include, for example, accelerate, decelerate, turn left, turn right, and any other command that the remotely controlled vehicle can accept and process. After accepting the user input, the processing determines, at step 408, if the adjustment to be made in response to the accepted user input will result in changing the affected parameter to be outside the limits defined by the profile that is configured for the vehicle. This determination is able to be performed either by the vehicle controller 202 in the remotely controlled vehicle or by processing within the remote controller itself. If this adjustment would result in the parameter being outside the limits defined for the currently configured profile, the input is rejected, at step 410.

If the user input results in adjusting the affected parameter so as to remain within the limits defined for the currently configured profile, the processing adjusts, at step 412, the operating parameters of the remotely controlled vehicle according to the accepted user input. The processing then adjusts, at step 414, the operating time and any profile parameters according to the time the user has been operating the remotely controlled vehicle. As described above, the operation of some embodiments of the present invention increase a remotely controlled vehicle's performance as the user operates the vehicle over a longer time. This simulates a user's gaining experience and skill in operating the vehicle.

The processing then determines, at step 416, if an event is detected by the vehicle processor 202. Events detected by the vehicle processor 202 include external events, such as passing a remotely sensed marker 112, and events generated by software processing, such as a decreasing fuel level, a timer initiated pit stop requirement, and the like. If an event is not detected, the processing returns to accepting, at step 406, input from the user for vehicle control. If an event is detected, the processing performs, at step 418, any processing that is associated with the particular detected event. Such processing includes, for example, slowing the maximum speed of the vehicle, stopping the vehicle, flashing lights and/or blowing the horn, and the like. Further embodiments perform processing that maintain status for the remotely controlled model race car 110, such as a fictitious fuel level, and generate events based upon the maintained status values.

The processing next determines, at step 420 if a notification of the event is to be communicated to the remote controller. If that notification of the event is not to be communicated, the processing returns to accepting, at step 406, input for vehicle control. If the notification of the event is to be sent, the notification is sent, at step 422, to the remote controller. The remote controller may respond to this notification by, for example, providing a specified feedback in response to the event notification.

FIG. 5 illustrates a combination hand held cellular phone 500 that incorporates wireless remote controller device functions in accordance with an exemplary embodiment of the present invention. This exemplary hand held cellular phone 500 is a monolithic phone that includes a display 308, conventional cellular phone keypad 310, earpiece 504, and microphone 506. A speaker 312 is also included in this exemplary hand held cellular phone 500 that is not illustrated in this figure. The exemplary hand held cellular phone 500 includes side mounted buttons that include an up-volume button 510, a down volume button 508 and a push to talk button 512. The buttons of the cellular phone keypad 310 and the side mounted buttons are able to be reconfigured to provide remote vehicle control functions when the exemplary hand held cellular phone 500 is in a wireless remote controller operating mode.

This reconfiguration and redefinition of these buttons may be indicated by data displayed on display 308 to facilitate the user's operation of this exemplary hand held cellular phone 500 as a wireless remote controller. For example, the up volume button 510 may be defined as the accelerate button, the down volume 508 button may be defined as the decelerate button and the push to talk button 512 may be defined as the break button. Various keys on the cellular phone keypad 310 may be defined as “turn right” and “turn left” and other functions for the operation of the remotely controlled model race car 110 of this exemplary embodiment.

The terms program, software application, and the like as used herein, are defined as a sequence of instructions designed for execution on a computer system. A program, computer program, or software application may include a subroutine, a function, a procedure, an object method, an object implementation, an executable application, an applet, a servlet, a source code, an object code, a shared library/dynamic load library and/or other sequence of instructions designed for execution on a computer system.

Reference throughout the specification to “one embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrases “in one embodiment” in various places throughout the specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. Moreover these embodiments are only examples of the many advantageous uses of the innovative teachings herein. In general, statements made in the specification of the present application do not necessarily limit any of the various claimed inventions. Moreover, some statements may apply to some inventive features but not to others. In general, unless otherwise indicated, singular elements may be in the plural and visa versa with no loss of generality.

While the various embodiments of the invention have been illustrated and described, it will be clear that the invention is not so limited. Numerous modifications, changes, variations, substitutions and equivalents will occur to those skilled in the art without departing from the spirit and scope of the present invention as defined by the appended claims. 

1. A method for wirelessly controlling a self propelled apparatus, the method comprising: storing a profile, the profile comprising at least a definition of at least one apparatus characteristic limit; and controlling a self propelled apparatus from a remote controller, the remote controller being in bi-directional wireless communications with the self propelled apparatus, wherein the controlling comprises at least one of: limiting a controlled value of the self propelled apparatus based upon the at least one apparatus characteristic limit, and providing feedback through the remote controller based upon at least one detected event.
 2. The method according to claim 1, wherein the remote controller further comprises a wireless telephone.
 3. The method according to claim 1, further comprising: detecting, within the self propelled apparatus, proximity of the self propelled apparatus to a remotely sensed marker, the remotely sensed marker indicating a pre-determined location in an area of movement for the self propelled apparatus; and triggering, in response to the detecting proximity, the at least one detected event.
 4. The method according to claim 1, further comprising adjusting, based upon an operating time of the self propelled apparatus, at least one of the at least one apparatus characteristic limit.
 5. The method according to claim 1, further comprising: detecting the at least one detected event within the self propelled apparatus; and transmitting an indication of the detected event from the self propelled apparatus to the remote controller through the bi-directional wireless communications.
 6. The method according to claim 5, further comprising: detecting the at least one detected event associated with the self propelled vehicle; and storing a plurality of feedback representations, wherein the providing feedback comprises selecting one of the plurality of feedback representations based upon the at least one detected event.
 7. The method according to claim 1, wherein the self propelled apparatus is one of a plurality of self propelled apparatuses, the method further comprising associating the remote controller with the one of the plurality of self propelled apparatuses.
 8. The method according to claim 1, further comprising: maintaining a status for the self propelled apparatus; and adjusting, based upon the maintained status, at least one of the at least one apparatus characteristic limit.
 9. The method according to claim 1, further comprising: estimating that the self propelled device is operating indoors; and adjusting, based upon the estimating that the self propelled device is operating indoors, at least one of the at least one apparatus characteristic limit.
 10. The method according to claim 9, wherein the estimating that the self propelled device is operating indoors comprises: detecting a lack of reception of a GPS radio signal; or detecting ambient light intensity.
 11. The method according to claim 9, wherein the detecting ambient light intensity is performed by a camera.
 12. A self propelled apparatus, comprising: a processor that controls at least one operation of the self propelled apparatus; at least one event detector to detect at least one detected event associated with the self propelled apparatus; and a bi-directional wireless communications interface that receives commands for control of the self propelled apparatus and transmits an indication of the at least one detected event.
 13. The self propelled apparatus according to claim 12, wherein the indication of the at least one detected event comprises a specification of the event.
 14. The self propelled apparatus according to claim 13, further comprising: a feedback storage that stores at least one of at least one stored recorded sound file and at least one stored vibration profile; and wherein the indication of the at least one detected event comprises one of the stored feedback representations that is selected based on the at least one detected event.
 15. The self propelled apparatus according to claim 14, wherein the at least one event sensor comprises a remotely sensed marker detector that detects a proximity of the self propelled vehicle to a remotely sensed marker, the remotely sensed marker indicating a predetermined location in a area of operation for the apparatus.
 16. A remote controller, comprising; a user input sensor that determines a user input; a self propelled apparatus control module that generates, based upon the user input, control instructions to be transmitted to a self propelled apparatus; a bi-directional short range wireless interface that transmits the control instructions and receives an indication of at least one detected event; and a user feedback generator that generates, based upon the at least one detected event, at least one type of user feedback.
 17. The remote controller according to claim 16, further comprising a cellular telephone.
 18. The remote controller according to claim 16, further comprising a feedback data storage that stores at least one definition of at least one feedback to be used as the at least one type of user feedback.
 19. The remote controller according to claim 16, further comprising a profile data storage that stores performance limits, and wherein the self propelled apparatus control module limits the control instructions based upon the performance limits.
 20. The remote controller according to claim 16, further comprising at least one indoor environment estimator that estimates whether the remote controller is in an indoors environment, and wherein the self propelled apparatus control module limits the control instructions based upon an estimate of whether the remote controller is in an indoors environment. 